/*
 * thread_task_base.h
 *
 *  Created on: 2016年2月24日
 *      Author: Administrator
 */

#ifndef CORE_SOURCES_THREAD_BASE_THREAD_TASK_BASE_HPP_
#define CORE_SOURCES_THREAD_BASE_THREAD_TASK_BASE_HPP_

#include <boost/noncopyable.hpp>
#include <boost/shared_ptr.hpp>
#include "../conf/def.h"
#include "basic/object.hpp"
namespace eyas {
namespace thread {
class EYAS_THREAD_API thread_task_base : public boost::noncopyable {
protected:
	thread_task_base() = default;
	// 禁止外部用户调用
	virtual ~thread_task_base() = default;

public:
	virtual void on_task() = 0;
};
typedef boost::shared_ptr<thread_task_base> thread_task_ptr;
}
}
#endif /* CORE_SOURCES_THREAD_BASE_THREAD_TASK_BASE_HPP_ */
